Supporting an access to a destination network via a wireless access network

ABSTRACT

For supporting an access to a destination network by a mobile device via a wireless access network, the mobile device generates a predetermined request, which is addressed to a connectivity test server in the destination network. The predetermined request is transmitted to the wireless access network. In case the predetermined request reaches the connectivity test server, it generates a predetermined response and transmits it to the mobile device via the wireless access network. The mobile device determines whether a response to the predetermined request is received from the wireless access network and whether a received response corresponds to the predetermined response.

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation of co-pending patent application Ser. No. 13/352,649 filed on Jan. 18, 2012, which is a continuation of patent application Ser. No. 12/224,453 filed on Feb. 12, 2009, now U.S. Pat. No. 8,199,657, and is claiming domestic priority under all applicable sections of 35 U.S.C. §120, which in turn is a U.S. National Stage of International Application Number PCT/IB2006/050651 filed on Mar. 2, 2006 which was published in English on Sep. 7, 2007 under International Publication Number WO 2007/099414.

FIELD OF THE INVENTION

The invention relates to methods of supporting an access to a destination network by a mobile device via a wireless access network. The invention relates equally to a corresponding mobile device, to a corresponding connectivity test server, to a corresponding system, to corresponding software codes and to corresponding software program products.

BACKGROUND OF THE INVENTION

A wireless access network, like a wireless local access network (WLAN), may be accessed by a mobile device for making use of services provided by the wireless access network. Some wireless access networks may provide an unlimited access. Other wireless access networks may request an authentication of a mobile device before enabling an access, for instance in order to be able to charge for a provided service. Still other wireless access networks may provide an access only to mobile devices of a selected group. A service that may be provided by a wireless access network, among others, is a connection to the Internet or to some other network.

Some mobile devices comprise a “search for WLAN” functionality, which allows a user to connect to any available WLAN without having a preconfigured profile. In mobile terminals Nokia 9500 and 9300 i, for instance, this functionality is called Easy WLAN. Some devices might also implement this functionality implicitly and join to previously unknown networks automatically, if none of the preconfigured networks are available.

When a user selects the “Search for WLAN” functionality or when such functionality is used automatically, and the mobile device discovers a WLAN which is not known to the mobile device so far, however, the mobile device may still lack important information.

For instance, the mobile device does not know the connectivity that is provided by the new connection. A user may desire to connect to the global Internet making use of the WLAN, but the WLAN might provide, for instance, only a limited Internet access or only an access to an enterprise intranet.

Further, in many public WLANs, the user has to perform a browser authentication in order to get access to the network. This is sometimes referred to as the Universal Access Method (UAM). The user may enter some Uniform Resource Locator (URL), and a browser sends a Hypertext Transfer Protocol (HTTP) requests to the WLAN. An access controller of the WLAN intercepts, or hi-jacks, the HTTP session and presents a login page to the user. The user logs on by filling in the fields on the login page.

When such a browser authentication is used, the mobile device does not know when the user has successfully completed the browser authentication. As a result, the middleware of the mobile device is not able to indicate the availability of the new connection to the application, to a Mobile Internet Protocol (IP) client or to a virtual private network (VPN) client requesting the access at the correct time. If the new connection is indicated to be available before the authentication phase has been completed, then the connectivity of the application, the mobile IP or the VPN client will be unnecessarily meddled, possibly leading to a connection failure.

Further, after joining a new WLAN, the mobile device does not know yet whether or not browser authentication is required. This makes it difficult to decide whether to save the connection for future use. It might not be desirable to save the connection for future use, if the authentication information is missing.

Further, when the user is using the browser, the mobile device does not know whether the user is just generally browsing or performing browser authentication to a WLAN. Therefore, the mobile device is not able to help the user with the browser authentication, for example by “recording” the browser authentication as a script and playing it back on the next connection.

Mobile devices that support several network access technologies may moreover use different connection methods to connect to a destination or target network, like the public Internet, a private network such as an enterprise intranet or an operator service network. A mobile device may reach the Internet, for instance, via a WCDMA network or via some WLAN. When establishing a connection to a particular destination network, the mobile device could automatically select the best available connection method. Once a connection to the destination network has been established, the mobile device could further roam automatically between the connection methods to ensure that always the best available connection method is used. Such a roaming can be performed on an application-level or on a network-level. For an application-level roaming, the mobile device does not require support from the network. A network-level roaming, in contrast, requires some network support.

Usually, it only makes sense to roam automatically between connections that connect to the same destination network, like the Internet. When discovering a WLAN, which is unknown to the mobile device, with the “Search for WLAN” functionality, the mobile device does not know the connectivity provided by the new connection. Therefore, the connection cannot easily be used for roaming. The roaming decision is also rendered difficult, since the mobile device does not know whether browser authentication is required when joining a new WLAN.

SUMMARY OF THE INVENTION

The invention provides a mobile device with information about a current level of connectivity when trying to access a destination network via a wireless access network.

A first method of supporting an access to a destination network by a mobile device via a wireless access network is proposed. The method comprises at the mobile device generating at least one predetermined request, which predetermined request is addressed to a connectivity test server in the destination network, and transmitting the at least one predetermined request to the wireless access network. The method further comprises at the mobile device determining whether a response to the at least one predetermined request is received from the wireless access network and whether a received response corresponds to a predetermined response which is known to be provided by the connectivity test server in case the connectivity test server is reached by the at least one predetermined request.

Moreover, a second method of supporting an access to a destination network by a mobile device via a wireless access network is proposed. The method comprises at a connectivity test server in the destination network receiving at least one predetermined request from a mobile device via the wireless access network. The at least one predetermined request is defined specifically for enabling a mobile device to test whether a connection to the destination network has been established. The method further comprises at the connectivity test server generating a predetermined response to the at least one received predetermined request and transmitting the predetermined response to the mobile device via the wireless access network.

Moreover, a mobile device supporting an access to a destination network via a wireless access network is proposed. The mobile device comprises processing means adapted to generate at least one predetermined request, which predetermined request is addressed to a connectivity test server in the destination network, and to provide the at least one predetermined request for transmission to the wireless access network. The mobile device further comprises processing means adapted to determine whether a response to a transmitted at least one predetermined request is received from the wireless access network and whether a received response corresponds to a predetermined response which is known to be provided by the connectivity test server in case the connectivity test server is reached by the at least one predetermined request.

The processing means can be realized in hardware and/or in software. The may comprise for instance corresponding software code and a processor executing this software code. Alternatively, they could be realized for instance by a circuit which is integrated in a chip.

Moreover, a connectivity test server supporting an access to a destination network by a mobile device via a wireless access network is proposed. The connectivity test server comprises processing means adapted to receive at least one predetermined request from a mobile device via the wireless access network. The at least one predetermined request is defined specifically for enabling a mobile device to test whether a connection to the destination network has been established. The connectivity test server further comprises processing means adapted to generate a predetermined response to at least one received predetermined request and to provide the predetermined response for transmission to the mobile device via the wireless access network.

The processing means can be realized again in hardware and/or in software. The may comprise for instance corresponding software code and a processor executing this software code. Alternatively, they could be realized for instance by a circuit which is integrated in a chip.

Moreover, a communication system is proposed, which comprises the proposed mobile device and the proposed connectivity test server.

Moreover, a first software code for supporting an access to a destination network by a mobile device via a wireless access network is proposed. When being executed in a processor of the mobile device, the software code generates at least one predetermined request, which predetermined request is addressed to a connectivity test server in the destination network, and provides the at least one predetermined request for transmission to the wireless access network. Further, it determines whether a response to the at least one predetermined request is received from the wireless access network and whether a received response corresponds to a predetermined response which is known to be provided by the connectivity test server in case the connectivity test server is reached by the at least one predetermined request.

Moreover, a second software code for supporting an access to a destination network by a mobile device via a wireless access network is proposed. When being executed in a processor of a connectivity test server in the destination network, the software code receives at least one predetermined request from a mobile device via the wireless access network. The at least one predetermined request is defined specifically for enabling a mobile device to test whether a connection to the destination network has been established. Further, the software code generates a predetermined response to the at least one received predetermined request and provides the predetermined response for transmission to the mobile device via the wireless access network.

Finally, a readable medium is proposed, in which the first or the second proposed software code is stored. The readable medium can be for instance a separate memory device, a memory for implementation in a mobile device or a connectivity test server, respectively, that can be accessed by a processor for executing the stored software code, or a more comprehensive module for implementation in a mobile device or a connectivity test server, respectively, etc.

The invention proceeds from the idea that a mobile device desiring to access a destination network via a wireless access network could first ‘ping’ a test service in the destination network, which would respond with a well-known response. The destination network can be in particular, though not exclusively, the Internet.

It is an advantage of the invention that it provides fast information to a mobile device on whether there is a connection to the destination network via the wireless access network or whether the wireless access network blocks the access to the destination network, either temporarily or permanently.

Obtaining such information is of particular advantage to a mobile device, in case the wireless access network is unknown so far to the mobile device, for instance if the wireless access network had been selected by a user with a “search wireless access network” functionality offered by the mobile device.

The reception of a predetermined response to the at least one predetermined request may be considered to indicate a connection to the destination network.

If the access to the destination network has been requested by an application or a mobile IP or VPN client of the mobile device, this application or client may then be informed about the connection to the destination network. Thus, the application or client can be informed as soon as possible, but at the same time not too early about the connection. The latter ensures that it can be avoided that the application or client suffers from connection failures.

A connection to the destination network via the wireless access network may also be saved for further use. Preferably, a user is first asked whether the connection is to be saved or not. If the destination network is the Internet, a connection may be saved for instance by creating an Internet Access Point (IAP).

The connection can also be used for roaming purposes. Applications or mobile IP or VPN clients of the mobile device accessing the destination network via some other connection may roam automatically to the new connection for accessing the destination network in response to reception of a predetermined response to the at least one predetermined request, which indicates that the new connection is a connection to the destination network.

In case another than the predetermined response is received, this indicates that a connection to the destination network has not been established yet. It may indicate that a user interaction of a user of the mobile device with the wireless access network is required as a preceding step. Thus, a user interaction may be initiated. Initiating a user interaction may consist for example simply in presenting the received response to a user. A possibly required user interaction could be for instance an authentication of a user. In this case, a received logon page could be presented to a user. Alternatively, the wireless access network could require the user for instance simply to accept a legal disclaimer before connectivity is granted.

In case the at least one predetermined request comprises at least two predetermined requests and a non-predetermined response to a first one of the at least two predetermined requests indicates a possibly required user interaction of a user of the mobile device with the wireless access network, a second one of the at least two predetermined requests may be retransmitted, for instance periodically. A detection of a predetermined response to the second one of the at least two predetermined requests may then be considered as an indication of a successfully completed user interaction.

During such a user interaction, user actions may be recorded in a script. The script can then be used for an automatic interaction when the wireless access network is to be used again at a later point of time for accessing the destination network. Preferably, a user is first asked whether the input for the user interaction is to be recorded. Examples of the recordable user actions during an authentication procedure, for instance, include information about the received logon page for future identification of the logon page, what data the user enters to different form fields of the page, which selections the user enters to radio buttons or drop-down lists, and which submit buttons the user presses. The script may contain several steps, in order to support log-on procedures where the local access controller presents several log-on related pages or forms in sequence.

It is to be understood that an indication whether a user 5 interaction is required and, if applicable, the script, can be saved together with the connection.

The reason that there is no reception of a predetermined response may be, for instance, that the wireless access network is a private network that allows access only to a selected group of mobile devices, or that the wireless access network is a public network requiring authentication for which the user of the mobile device is not in possession of the required authentication information. In both cases, the predetermined requests are dropped or intercepted by the wireless access network, and thus no predetermined response is generated and provided.

It may be determined that there is no reception of a predetermined response in case a set timer runs out or in case a user interrupts the waiting, etc.

The at least one predetermined request may be for instance a predetermined HTTP request and/or a predetermined User Datagram Protocol (UDP) request and/or a predetermined Transmission Control Protocol (TCP) request. The STUN protocol requests and responses are another instance of the predetermined requests and responses. The STUN protocol is specified in IETF Request for Comments 3489: “STUN—Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs)”, March 2003. It is to be understood that other types of requests could be employed as well.

Some of the above mentioned exemplary embodiments will now be presented specifically for HTTP and UDP or TCP messages.

The proposed connectivity test server may be placed in the destination network, for example in the public Internet. When the server receives a request over one or multiple TCP or UDP port numbers as defined by a service provider, it may return an appropriate reply as defined by the service provider.

A simple HTTP server implemented in the connectivity test server could return for instance a test page that is well known to the mobile device. The purpose of the exchange of predetermined HTTP messages is to let the mobile device detect whether there is HTTP access to the Internet or whether there is an intermediate element that blocks or hi-jacks the HTTP session. In the first case, the well-known page can be successfully retrieved. In the second case, an access controller of the wireless access network may return no response or some other response than the well-known response for a browser authentication.

Since the HTTP test allows the mobile device to explicitly know when the user is performing browser authentication, it is possible to record the fact that browser authentication is required for the connection, as indicated above. This fact can later be used in roaming decisions. For example, automatic roaming in the background may not be carried out, if browser authentication is missing, or, depending on the settings of the mobile device, the browser may be automatically started to let the user enter the expected credentials. Furthermore, the mobile device could record the browser authentication itself as a “script” so that in subsequent connections, the authentication can be performed automatically. The “script” is to be understood to be any automation that either helps the user to perform the logon more easily or that completely automates the logon. For example, the browser can record the information that the user enters in the fields of HTML forms and submit buttons the user clicks.

In addition, at least one other non HTTP based service could respond to a predetermined request by the mobile device with a predetermined response. To obtain a more reliable understanding about the level of connectivity, the connectivity test server could provide for instance a couple of UDP or TCP ports for the request/response using standard or proprietary protocols.

Different wireless access networks may employ different firewalls. Some networks might admit only HTTP traffic and block all UDP ports and all other TCP ports. Other networks might block only certain protocols but allow some. Therefore, testing with the HTTP port only may give a misleading picture of the nature of the new connection.

By defining another TCP or UDP protocol number, it is possible to test whether the wireless access network admits non-HTTP traffic to the Internet or whether the local network employs a port-specific firewall that blocks the TCP or UDP ports. For example, the test might use the IPsec Internet Key Exchange and NAT traversal UDP ports 500 and 4500, in order to test whether the local network admits VPN connections to gateways in the Internet. The purpose of the second test service is to be able to quickly test whether there is a general connection—not just HTTP access—to the Internet and to detect whether browser authentication has been already completed.

For example, when a browser authentication is required, the mobile device will still not know when the browser authentication has been completed and the connection to the Internet is established. Therefore, a second predetermined request, for example a predetermined UDP request, may be transmitted repeatedly. The UDP requests are dropped by the wireless access network, but only until the browser authentication has been completed. When the browser authentication has been completed, the wireless access network typically adds the Medium Access Control (MAC) address of the mobile device and/or the Internet Protocol (IP) address of the mobile device to an Access Control List (ACL) in a packet filter firewall so that the packet filter firewall will start forwarding the traffic of the mobile terminal to/from the global Internet. When a predetermined UDP response is obtained after an initiated browser authentication, the mobile terminal will thus know that the browser authentication has been completed.

It is also possible to define an extensible connectivity test framework in the mobile device, so that new tests could be added later for example in the form of new plug-in modules. Such plug-in modules could be provided for instance in the form of software updates.

The wireless access network can use any networking technology that is suited to provide a connection to the Internet or to employ browser authentication. It can be for instance a WLAN, an IP passthrough or a Bluetooth™ Personal Area Network (PAN).

BRIEF DESCRIPTION OF THE FIGURES

Other objects and features of the present invention will become apparent from the following detailed description considered in conjunction with the accompanying drawings.

FIG. 1 is a schematic diagram of a system according to an embodiment of the invention;

FIG. 2 is a schematic block diagram of elements of the system of FIG. 1;

FIGS. 3 a to 3 n are a sequence of presentations on a display illustrating a first operation in the system of FIG. 1;

FIG. 4 is a chart illustrating the first operation in the system of FIG. 1;

FIGS. 5 a to 5 n are a sequence of presentations on a display illustrating a second operation in the system of FIG. 1

FIG. 6 is a chart illustrating the second operation in the system of FIG. 1;

FIGS. 7 a to 7 h are a sequence of presentations on a display illustrating a third operation in the system of FIG. 1; and

FIG. 8 is a chart illustrating the third operation in the system of FIG. 1.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 is a schematic diagram of an exemplary system, 10 in which an improved Internet access via a wireless access network can be implemented according to an embodiment of the invention.

The system comprises a mobile terminal 100. The mobile terminal 100 is able to access a Wideband Code Division Multiple Access (WCDMA) network 310. In addition, it is able to access IEEE 802.11 based WLANs, for instance an open WLAN 320, a public WLAN 330 requiring a browser authentication or a private WLAN 340. Each of these networks 310, 320, 330, 340 may provide an access to the Internet 350. The access that is provided by private WLAN 340, however, is limited to a specified group of mobile terminal, which does not include mobile terminal 100. The mobile terminal 100 may thus use either the WCDMA network 310 or one of the other WLANs 320, 330 that is available at its current location for retrieving e-mails from the Internet 350, for using Instant Messaging, for viewing Web-pages, etc. It is to be understood that the mobile terminal 100 may also be able to access any other type of wireless access network, which may or may not provide a connection to the Internet 350. In accordance with an embodiment of the invention, the mobile terminal 100 supports an Internet connectivity test service.

In addition, the system comprises an Internet connectivity test server 200 in the Internet 350.

Some details of the system are presented in FIG. 2.

The mobile terminal 100 comprises a user interface 110, including at least input keys and a display. Further, it comprises a processor 120 that is adapted to execute software code installed in the mobile terminal 100. The software code comprises for instance software code for a variety of applications including an e-mail client 121 and an Instant Messaging client 122. Further, the software code comprises software code for a browser client 123, for a WLAN component 124 and for an operating system or platform 125 of the mobile terminal 100. The WLAN component 124 includes a test protocol for the Internet connectivity test service. The applications 121, 122, 123 and the WLAN component 124 are linked to the user interface 110. In addition, the applications 121, 122, 123 are linked to the WLAN component 124. The applications 121, 122, 123 and the WLAN component 124 run on top of an operating system or platform 125.

It is to be understood that the mobile terminal 100 comprises various other components not shown, including a WCDMA transceiver enabling transmissions to and receptions from the WCDMA network 310 and a WLAN transceiver enabling transmissions to and receptions from the WLANs 320, 330, 340.

The Internet connectivity test server 200 comprises a processor 210 that is adapted to execute software code installed in the Internet connectivity test server 200. The software code includes testing software code 211 with an HTTP server component 212 and a UDP server component 213. Both servers 212, 213 can be addressed by a particular port number of the Internet connectivity test server 200.

It is to be understood that the Internet connectivity test server 200 may also comprise various other components not shown.

A first exemplary operation in the system of FIG. 1 will now be explained with reference to FIGS. 3 and 4. FIGS. 3 a to 3 n are a sequence of presentations on the display of the mobile terminal 100. FIG. 4 is a chart illustrating an associated signal exchange between the mobile terminal 100 and the Internet connectivity test server 200 via the open WLAN 320.

In the mobile terminal 100, Instant Messaging is currently bound to the “Internet” destination network and 25 running over WCDMA.

In FIG. 3 a, a user has called the main menu of the mobile terminal 100 and selects the menu item “messaging” in order to get to a messaging menu.

In FIG. 3 b, the user launches the e-mail client 121 by selecting the item “e-mail” from the messaging menu, in order to enter the e-mail application.

In FIG. 3 c, a list of e-mails is presented which are waiting for download from a mailbox provided by some e

mail server in the Internet 350. The user selects the first e-mail for downloaded.

In FIG. 3 d, the user is asked by a pop-up window whether a connection to the mailbox is to be established. The user selects the option “yes”, which is associated to one of the softkeys of the mobile terminal 100.

The e-mail client 121 is configured to “always ask” which connection is currently to be used.

The connection selection is managed by the operating system or platform 125. Triggered by the e-mail client 121, the operating system or platform 125 is therefore informed upon request by the available communication components which connection methods are currently available. It is informed for instance by the WLAN component 124 that three WLAN networks are available at the current location. As indicated in FIG. 4, the operating system or platform 125 now causes the user interface 110 to ask the user to select a connection (step 401).

In FIG. 3 e, the user is thus asked to select the “Search WLAN” functionality, an Internet connection or an Intranet connection.

The options ‘Internet’ and ‘Intranet’ refer to destination networks, where the user expects a certain application server to be available. ‘Internet’ can be understood as a prioritized list of ‘connection methods’ that provide a connection to the application servers at the public Internet. The connection methods might include for example a home WLAN connection, a public WLAN hotspot connection and a cellular packet data connection to the Internet. Similarly, ‘Intranet’ may be understood as a prioritized list of connection methods by which the mobile terminal 100 can reach application servers at an enterprise Intranet. The list might include for example direct campus WLAN connections, dial-up connections to an enterprise dial-up server and VPN connections over public Internet.

The user selects the “Search WLAN” option.

The user selection is provided by the user interface 110 to the operating system or platform 125, which informs the WLAN component 124 accordingly (step 402).

The WLAN component 124 now causes the user interface 110 to present a list of selectable WLANs to the user.

In FIG. 3 f, the user is thus asked to select one of three available, listed WLANs, including, by way of example, a WLAN called “BurgerWLAN”, a WLAN called “CoffeeSpot” and a WLAN called “TampereCity”. The user selects the last WLAN in the list.

The WLAN component 124 interprets this selection as a selection of an associated Service Set Identifier (SSID), as illustrated in FIG. 4 (step 403). The SSID is a network name defined for an IEEE 802.11 based wireless access network.

The WLAN component 124 now establishes a connection to an access point of the selected WLAN 320 (step 404).

The connection is not yet indicated to the e-mail client 121, though. Instead, the WLAN component 124 first runs an Internet connectivity test protocol. In the meantime, a pop-up window indicating “Testing Internet connectivity” may be shown with an option to skip the testing, as illustrated in FIG. 3 g.

In the scope of the Internet connectivity test protocol, the WLAN component 124 transmits a predetermined HTTP request and a predetermined UDP request which are addressed to a respective port of the Internet connectivity test server 200 (steps 405, 406).

The selected WLAN 320 is an open WLAN which does not require any browser authentication. Both requests are therefore simply forwarded by the WLAN 320 to the Internet connectivity test server 200.

Upon receipt of the predetermined HTTP request, the HTTP server 212 of the Internet connectivity test server 200 generates a predetermined HTTP response and transmits this response via the WLAN 320 to the mobile terminal 100 (step 407).

Upon receipt of the predetermined UDP request, the UDP server 213 of the Internet connectivity test server 200 generates a predetermined UDP response and transmits this response via the WLAN 320 to the mobile terminal 100 (step 408).

When the WLAN component 124 receives a HTTP response, it determines whether the response corresponds to a predetermined HTTP response, which is known to originate from an Internet connectivity test server. If this is the case, the WLAN component 124 knows that a browser authentication is not required (step 409).

When the WLAN component 124 receives a UDP response, it determines whether the response corresponds to a predetermined UDP response, which is known to originate from an Internet connectivity test server. If this is the case, the WLAN component 124 knows that the addressed UDP port responded and that a connection to the Internet 350 has been established (step 410).

The WLAN component 124 now instructs the user interface 110 to inform the user by means of a pop-up window that a connection to the Internet 350 has been established and to ask whether the connection is to be saved for further use. FIG. 3 h presents a corresponding presentation on the display. The user may choose to save the connection by selecting a “yes” option associated to one of the softkeys of the mobile terminal 100. The WLAN component 124 is informed about the selection.

In case the connection is to be saved, the WLAN component 124 saves the connection by creating a WLAN Internet Access Point (IAP), which is a connection profile for this network, and by associating it to the Internet destination network (step 411). This means that the next time the mobile terminal 100 is in the coverage area of this WLAN and it is asked to establish a connection to the ‘Internet’ destination, the mobile terminal 100 can automatically select this new WLAN connection method. The mobile terminal 100 might select some other connection method instead, if this new connection method is not available or if a higher-priority connection method is available. The WLAN IAP may record the fact that browser authentication was not required in this network. This information may later be used in automatic roaming decisions as an indication that it is appropriate to roam to this network in the background, since no user interaction is required to establish the connection. The WLAN component 124 causes the user interface 110 to inform the user about the saved connection.

In FIG. 3 i, the user is informed by a pop-up window of a short duration that the connection method has been saved to ‘Internet’. In addition, the WLAN component 124 informs the e-mail client 121 that a connection to the Internet 350 has been established (step 412).

In addition, the WLAN component 124 informs the e-mail client 121 that a connection to the Internet 350 has been established (step 412).

The e-mail client 121 may now retrieve the requested email using the established Internet connection via the WLAN 320.

FIG. 3 j shows that the user is informed by a further pop-up window initiated by the e-mail client 121 that the requested e-mail is being retrieved.

The email is finally presented on the display, as shown in FIG. 3 k.

In parallel, the Instant Messaging client 122 roams from the WCDMA network 310 to the “TampereCity” WLAN 320 for accessing the Internet 350. The roaming is performed automatically, since the Instant Messaging client 122 is bound to the “Internet” as a destination network, and the Internet Connectivity Test has detected that WLAN 320 provides connectivity to the Internet.

FIG. 31 shows a display with an ongoing Instant Messaging. Upon the automatic roaming to the new connection from the WCDMA network 310, a pop-up window is presented on the display, as shown in FIG. 3 m, which indicates to the user that the mobile terminal 100 is connecting to the “Internet” via the WLAN 320 “TampereCity”. Once the connection has been established, the preceding Instant Messaging presentation is displayed again, as shown in FIG. 3 n.

A second exemplary operation in the system of FIG. 1 will now be explained with reference to FIGS. 5 and 6. FIGS. 5 a to 5 n are a sequence of presentations on the display of the mobile terminal 100. FIG. 6 is a chart illustrating an associated signal exchange between the mobile terminal 100 and the Internet connectivity test server 200 via the public WLAN 330.

In the mobile terminal 100, the e-mail client 121 is 5 currently bound to the “Internet” destination network and running over WCDMA.

In FIG. 5 a, a user has called the main menu of the mobile terminal 100 and selects the menu item “IM” in order to launch the Instant Messaging client 122.

The Instant Messaging client 122 provides thereupon an Instant Messaging menu for presentation. In FIG. 5 b, the user selects the item “conversation” from the Instant Messaging menu, in order to enter an Instant Messaging conversation.

In FIG. 5 c, a list of conversational partners is presented. The user selects the first conversational partners “Anna”.

The Instant Messaging client 122 is configured to “always ask” which connection is currently to be used.

Triggered by the Instant Messaging client 122, the operating system or platform 125 is therefore informed upon request by the available communication components which connection methods are currently available. It is informed for instance by the WLAN component 124 that three WLAN networks are available at the current location. As indicated in FIG. 6, the operating system or platform 125 now causes the user interface 110 to ask the user to select a connection (step 601).

In FIG. 5 d, the user is thus asked to select the “Search WLAN” functionality, an Internet connection or an Intranet connection. The user selects the “Search WLAN” option.

The user selection is provided by the user interface 110 to the operating system or platform 125, which informs the WLAN component 124 accordingly (step 602).

The WLAN component 124 now causes the user interface 110 to present a list of selectable WLANs to the user.

In FIG. 5 e, the user is thus asked to select one of three available, listed WLANs, including again, by way of example, a WLAN called “BurgerWLAN”, a WLAN called “CoffeeSpot” and a WLAN called “TampereCity”. The user selects the “CoffeeSpot” WLAN.

The WLAN component 124 interprets this selection as a selection of an associated Service Set Identifier (SSID), as illustrated in FIG. 6 (step 603).

The WLAN component 124 now establishes a connection to the access point of the selected WLAN 330 (step 604).

The connection is not yet indicated to the Instant Messaging client, though.

Instead, the WLAN component 124 first runs the Internet connectivity test protocol. In this scope, it transmits the predetermined HTTP request and the predetermined UDP request to the Internet connectivity test server 200 (step 605).

The selected WLAN 330 is a public WLAN, which provides access to the Internet 350 but which demands to this end a browser authentication.

A local access controller of the WLAN 330 therefore intercepts the HTTP and UDP requests and pushes a logon page to the mobile terminal 100 (step 606).

The logon page is provided to the mobile terminal 100 in a HTTP response message (step 607).

When the WLAN component 124 receives the HTTP response, it determines whether the response corresponds to the predetermined HTTP response, which is known to originate from an Internet connectivity test server. If this is not the case, the WLAN component 124 knows that a browser authentication is required (step 608).

The WLAN component 124 forwards the HTTP logon page to the browser client 123. The browser client 123 presents the logon page on the display for enabling the user to perform a manual browser logon (step 610). During the browser logon, the WLAN component 124 may record the actions of the user in a logon script, possibly after having inquired whether the user desires such a recording (step 609).

In FIG. 5 f, the logon page is presented in a pop-up browser window. The browser window enables the user to enter a username and a password. When both have been entered, the user may select a “LOGIN” option to continue.

During the browser authentication process, the WLAN component 124 continues transmitting the predetermined UDP request to the Internet connectivity test server (steps 611, 613). As long as the browser authentication has not been completed, the local access controller of the WLAN 330 simply drops the received UDP requests (steps 612, 614).

When the browser authentication has been successfully completed (step 615), the browser client 123 informs the user accordingly by a HTTP page indicating that the authentication was successful. The user is further requested to select a “close window” option to continue, as indicated in FIG. 5 g. Alternatively, the window could be left in the foreground while running the Internet Connectivity test and later, once the UDP test has succeeded, the browser window could be automatically moved to the background so that the Instant Messaging application comes to the foreground again.

A pop-up window indicating “Testing Internet connectivity” may be shown again during the testing procedure, as illustrated in FIG. 5 h. This window may be omitted during the entire browser authentication, though.

The next predetermined UDP request from the WLAN component 214 is now forwarded by the local access controller of the WLAN 330 to the Internet 350 so that it reaches the addressed Internet connectivity test server 200 (step 616).

Upon receipt of the predetermined UDP request, the UDP server 213 of the Internet connectivity test server 200 generates the predetermined UDP response and transmits this response via the WLAN 330 to the mobile terminal 100 (step 617).

When the WLAN component 124 receives a UDP response, it determines whether the response corresponds to a predetermined UDP response, which is known to originate from an Internet connectivity test server. If this is the case, the WLAN component 124 knows that the addressed UDP port responded and that a connection to the Internet 350 has been established (step 618).

The WLAN component 124 now instructs the user interface 110 to inform the user by means of a pop-up window that a connection to the Internet 350 has been established and to ask whether the connection is to be saved for further use. FIG. 5 i presents the corresponding presentation on the display. The user may choose to save the connection by selecting a “yes” option associated to one of the softkeys of the mobile terminal 100. The WLAN component 124 is informed about the selection.

In case the connection is to be saved, the WLAN component 124 saves the connection by creating a WLAN IAP and by associating it to the Internet destination network (step 619). The WLAN IAP comprises the information that a browser authentication is required for this specific connection. In addition, a login script is included, in case the user actions during the browser authentication have been recorded.

The WLAN component 124 causes the user interface 110 to inform the user about the saved connection.

In FIG. 5 j, the user is informed by a pop-up window of a short duration that the connection method has been saved to ‘Internet’.

In addition, the WLAN component 124 informs the Instant Messaging client 122 that a connection to the Internet 350 has been established (step 620).

The user may now continue with the Instant Messaging using the established Internet connection via the WLAN, as indicated in FIG. 5 k.

In parallel, the e-mail client 121 roams from the WCDMA network 310 to the “CoffeeSpot” WLAN 330 for accessing the Internet 350. The roaming is performed automatically, since the e-mail client 121 is bound to the “Internet” as a destination network, and the Internet Connectivity Test has now detected that WLAN 330 provides connectivity to the Internet.

FIG. 51 shows a list of new e-mails that are available for a download. Upon the automatic roaming to the new connection, a pop-up window is presented on the display, as shown in FIG. 5 m. The window indicates to the user that the mobile terminal 100 is connecting to the “Internet” via the WLAN 330 “CoffeeSpot”. Once the connection has been established, the preceding e-mail window is shown again, as indicated in FIG. 5 n.

A third exemplary operation in the system of FIG. 1 will now be explained with reference to FIGS. 7 and 8. FIGS. 7 a to 7 h are a sequence of presentations on the display of the mobile terminal 100. FIG. 8 is a chart illustrating an associated signal exchange between the mobile terminal 110 and a private WLAN 340.

In FIG. 7 a, a user has called the main menu of the mobile terminal 100 and selects the menu item “Web” in order to launch the browser client 123.

The browser client 123 provides thereupon a list of bookmarks. In FIG. 7 b, the list of bookmarks is presented. The user selects the item “My Widget Configuration” from the list, in order to connect to a web-based configuration interface of an electronic appliance. The web-link that is associated to the bookmark is indicated at the bottom of the display.

The browser client 123 is configured to “always ask”, which connection is currently to be used for accessing a selected Internet page.

Triggered by the browser client 123, the operating system or platform 125 is therefore informed upon request by the available communication components which connection methods are currently available. It is informed for instance by the WLAN component 124 that three WLAN networks are available at the current location. As indicated in FIG. 8, the operating system or platform 125 now causes the user interface 110 to ask the user to select a connection (step 801).

In FIG. 7 c, the user is thus asked to select the “Search WLAN” functionality, an Internet connection or an Intranet connection. The user selects the “Search WLAN” option.

The user selection is provided by the user interface 110 to the operating system or platform 125, which informs the WLAN component 124 accordingly (step 802).

The WLAN component 124 now causes the user interface 110 to present a list of selectable WLANs to the user.

In FIG. 7 d, the user is thus asked to select one of three available, listed WLANs, including, by way of example, a WLAN called “Onkiniemi”, a WLAN called “Rudolph” and a WLAN called “Xo2005”. The user selects the last WLAN in the list.

The WLAN component 124 interprets this selection as a selection of an associated Service Set Identifier (SSID), as indicated in FIG. 8 (step 803).

The WLAN component 124 now establishes a connection to the access point of the selected WLAN 340 (step 804).

The connection is not yet indicated to the browser client 123, though. Instead, the WLAN component 124 first runs an Internet connectivity test protocol. In the meantime, a pop-up window indicating “Testing Internet connectivity” may be shown with an option to skip the testing, as illustrated in FIG. 7 e.

In the scope of the Internet connectivity test protocol, the WLAN component 124 transmits a predetermined HTTP request and a predetermined UDP request which are addressed to a respective port of the Internet connectivity test server 200 (steps 805, 807).

As the WLAN 340 is a private WLAN, which only provides an access to a private and unconnected network, both requests are not forwarded to the global Internet 350 by the WLAN 340 (steps 806, 808). Alternatively, a local access controller of the WLAN 340 could respond to the HTTP request with some local box in a pop-up window of the mobile terminal 100, which is dismissed by the user.

The WLAN component 124 thus receives no response to its requests. It continues transmitting requests (steps 809, 811), which are dropped by the local access controller of the WLAN 340 (steps 810, 812), until a timer runs out or until the user selects the skip option (step 813). The WLAN component 124 assumes that a connection to the Internet 350 via the selected WLAN 340 is not possible.

The WLAN component 124 now prompts for a destination network (step 814). That is, the user is asked to instruct the mobile terminal 100 to which destination network the new connection belongs. If there are other applications connected to the same destination, they could then roam to this new connection. The user may be provided for the instruction for instance with a list comprising the Internet, an Intranet, an operator service or other networks for a presentation on the display, as indicated in FIG. 7 f. Further, a selection option could be provided for the case that the user does not care which kind of connection is established.

The WLAN component 124 is informed about the selection and processes the selected connection in a conventional way without any help from the Internet connectivity test service (step 815).

The WLAN component 124 now instructs the user interface 110 to inform the user by means of a pop-up window that a connection to the WLAN network “Xo2005” 340 has been established and to ask whether the connection is to be saved for further use. FIG. 7 g presents a corresponding presentation on the display. The user may choose not to save the connection by selecting a “no” option associated to one of the softkeys of the mobile terminal 100. The WLAN component 124 is informed about the selection.

In addition, the WLAN component 124 informs the browser client 123 that a connection has been established (step 815).

The browser client 123 accesses thereupon the selected Web-site using the established WLAN connection and presents the provided HTML page to the user, as indicated in FIG. 7 h.

Summarized, the presented exemplary embodiment of the invention enables a mobile terminal to detect when it has connectivity to the public Internet, to detect whether browser authentication is required and to detect when browser authentication has been successfully completed.

Since the mobile terminal can automatically detect connectivity to the public Internet, new connections can be indicated to applications or clients at the right time. Further, previously unknown WLAN connections can be used for roaming. The browser authentication is equally simplified, since the mobile terminal knows when it is required. The usability of the mobile terminal is improved by reducing user interaction with the mobile terminal and by enabling automatic browser authentication with recorded scripts.

It is to be noted that the described embodiment constitutes only one of a variety of possible embodiments of the invention. 

1. A method comprising: generating, by a mobile device, at least one predetermined request for detecting connectivity to an Internet via a wireless access network, which at least one predetermined request is addressed to a connectivity test server in the Internet; transmitting, by the mobile device, the at least one predetermined request to the wireless access network; and determining, by the mobile device, whether a response to the at least one predetermined request is received from the wireless access network and whether a received response corresponds to a predetermined response which is known to be provided by the connectivity test server in case the connectivity test server is reached by the at least one predetermined request, wherein reception of the predetermined response is considered to indicate connectivity to the Internet via the wireless access network.
 2. The method according to claim 1, further comprising: informing at least one application or client of the mobile device about a connection to the Internet, in case it is determined that a received response corresponds to the predetermined response.
 3. The method according to claim 2, wherein the at least one application or client of the mobile device accesses the Internet via the wireless access network in response to being informed about the connection to the Internet.
 4. The method according to claim 1, wherein at least one application or client of the mobile device accessing the Internet via another connection than the wireless access network roams onto the wireless access network for accessing the Internet in response to being informed about the connection to the Internet.
 5. The method according to claim 1, wherein the wireless access network is a public wireless local area network, wherein the mobile device comprises a prioritized list of connection methods that provide a connection to the Internet, and wherein the list includes a use of a public wireless local area network as one connection method.
 6. The method according to claim 5, further comprising: in case it is determined that the predetermined response to the at least one predetermined request is received, selecting, by the mobile device, a use of the wireless access network as a new connection method, if no higher priority connection method is present on the list and available.
 7. The method according to claim 1, wherein in case it is determined that the predetermined response to the at least one predetermined request is received from the wireless access network without browser authentication, further comprising: recording, by the mobile device, an indication that it is possible to connect to the Internet via the wireless access network in the background, as a basis for later automatic connection decisions.
 8. The method according to claim 1, wherein in the case of a reception of at least one of another response than the predetermined response and no response to the at least one predetermined request, the method further comprising: initiating a user interaction of a user of the mobile device with the wireless access network.
 9. The method according to claim 8, further comprising: recording in the mobile device that a user interaction of a user of the mobile device with the wireless access network is required by the wireless access network for accessing the Internet via the wireless access network.
 10. The method according to claim 8, wherein initiating a user interaction comprises at least one of: enabling a user to enter data for an authentication of the user; presenting a logon page on a display; presenting a logon page in a browser window on a display; presenting several logon related pages or several logon related forms in sequence enabling a user to enter username and password; enabling a user to accept a legal disclaimer; enabling a user to select an option from a drop-down list; enabling a user to select a radio button; and enabling a user to press a submit button.
 11. The method according to claim 1, further comprising storing user interaction related data in case it is determined one of that another response than the predetermined response and that no response to the at least one predetermined request is received.
 12. The method according to claim 11, wherein the user interaction enables a connection to the Internet via the wireless access network, the method further comprising using the stored user interaction related data subsequently for automatically connecting to the Internet via the wireless access network without user interaction.
 13. The method according to claim 11, wherein the user interaction related data comprises at least one of authentication data; and acceptance of a legal disclaimer.
 14. The method according to claim 1, wherein the at least one predetermined request is a first predetermined request, the method further comprising: generating a second predetermined request addressed to the connectivity test server in the Internet, the first predetermined request using at least one of a first protocol and a first port and the second predetermined request using at least one of a second protocol and a second port; transmitting the second predetermined request to the wireless access network; and determining whether a response to the second predetermined request is received from the wireless access network and whether the received response to the second predetermined request corresponds to a predetermined response which is known to be provided by the connectivity test server in case the connectivity test server is reached by second predetermined request, as an indication of the level of connectivity to the Internet enabled by the wireless area network.
 15. An apparatus comprising a processor and stored software code, the software code, with the processor, configured to cause the apparatus to generate at least one predetermined request for detecting connectivity to an Internet via a wireless access network, which at least one predetermined request is addressed to a connectivity test server in the Internet; the software code, with the processor, configured to cause the apparatus to provide the at least one predetermined request for transmission to the wireless access network; and the software code, with the processor, configured to cause the apparatus to determine whether a response to the at least one predetermined request is received from the wireless access network and whether a received response corresponds to a predetermined response which is known to be provided by the connectivity test server in case the connectivity test server is reached by the at least one predetermined request, wherein reception of the predetermined response is considered to indicate a connectivity to the Internet.
 16. The apparatus according to claim 15, wherein the software code, with the processor, is further configured to cause the apparatus to inform at least one application or client of the apparatus about a connection to the Internet, in case it is determined that a received response corresponds to the predetermined response.
 17. The apparatus according to claim 16, wherein the at least one application or client of the apparatus is configured to access the Internet via the wireless access network in response to being informed about the connection to the Internet.
 18. The apparatus according to claim 16, wherein the at least one application or client is configured to roam onto the wireless access network for accessing the Internet, when accessing the Internet via another connection than the wireless access network, in response to being informed about the connection to the Internet.
 19. The apparatus according to claim 15, wherein the wireless access network is a public wireless local area network, wherein the apparatus comprises a prioritized list of connection methods that provide a connection to the Internet, and wherein the list includes a use of a public wireless local area network as one connection method.
 20. The apparatus according to claim 19, wherein the software code, with the processor, is further configured to cause the apparatus to, in case it is determined that the predetermined response to the at least one predetermined request is received, select a use of the wireless access network as new connection method, if no higher priority connection method is present on the list and available.
 21. The apparatus according to claim 15, wherein the software code, with the processor, is further configured to cause the apparatus to record an indication that it is possible to connect to the Internet via the wireless access network, a basis for later automatic connection decisions, in case it is determined that the predetermined response to the at least one predetermined request is received from the wireless access network without browser authentication.
 22. The apparatus according to claim 15, wherein the software code, with the processor, is further configured to cause the apparatus, in the case of a reception of at least one of another than the predetermined response and no response to the at least one predetermined request, to initiate a user interaction of a user of the apparatus with the wireless access network.
 23. The apparatus according to claim 22, wherein the software code, with the processor, is further configured to cause the apparatus to record in the apparatus that a user interaction of a user of the apparatus with the wireless access network is required by the wireless access network for accessing the Internet via the wireless access network.
 24. The apparatus according to claim 22, wherein initiating a user interaction comprises at least one of: enabling a user to enter data for an authentication of the user; presenting a logon page on a display; presenting a logon page in a browser window on a display; presenting several logon related pages or several logon related forms in sequence; enabling a user to enter username and password; enabling a user to accept a legal disclaimer; enabling a user to select an option from a drop-down list; enabling a user to select a radio button; and enabling a user to press a submit button.
 25. The apparatus according to claim 15, wherein the software code, with the processor, is further configured to cause the apparatus to store user interaction related data in case it is determined one of that another response than the predetermined response and that no response to the at least one predetermined request is received.
 26. The apparatus according to claim 25, wherein the user interaction enables a connection to the Internet via the wireless access network, and wherein the software code, with the processor, is further configured to cause the apparatus to use the stored user interaction related data subsequently for automatically connecting to the Internet via the wireless access network without user interaction.
 27. The apparatus according to claim 25, wherein the user interaction related data comprises at least one of authentication data; and acceptance of a legal disclaimer.
 28. The apparatus according to claim 15, wherein the at least one predetermined request is a first predetermined request, and wherein the software code, with the processor, is further configured to cause the apparatus to: generate a second predetermined request addressed to the connectivity test server in the Internet, the first predetermined request using at least one of a first protocol and a first port and the second predetermined request using at least one of a second protocol and a second port; transmit the second predetermined request to the wireless access network; and determine whether a response to the second predetermined request is received from the wireless access network and whether the received response to the second predetermined request corresponds to a predetermined response which is known to be provided by the connectivity test server in case the connectivity test server is reached by second predetermined request, as an indication of the level of connectivity to the Internet enabled by the wireless area network.
 29. The apparatus according to claim 15, wherein said apparatus is a mobile terminal.
 30. An apparatus comprising a processor and stored software code, the software code, with the processor, configured to cause the apparatus to generate at least one predetermined request for detecting connectivity to an Internet via a wireless access network, which at least one predetermined request is addressed to a connectivity test server in the Internet; the software code, with the processor, configured to cause the apparatus to provide the at least one predetermined request for transmission to the wireless access network; the software code, with the processor, configured to cause the apparatus to determine whether a response to the at least one predetermined request is received from the wireless access network and whether a received response corresponds to a predetermined response which is known to be provided by the connectivity test server in case the connectivity test server is reached by the at least one predetermined request, wherein reception of the predetermined response is considered to indicate a connectivity to the Internet; and the software code, with the processor, configured to cause the apparatus to initiate a user interaction of a user of the apparatus with the wireless access network in the case of a reception of at least one of another than the predetermined response and no response to the at least one predetermined request, wherein initiating a user interaction comprises at least one of: enabling a user to enter data for an authentication of the user; presenting a logon page on a display; presenting a logon page in a browser window on a display; presenting several logon related pages or several logon related forms in sequence; enabling a user to enter username and password; enabling a user to accept a legal disclaimer; enabling a user to select an option from a drop-down list; enabling a user to select a radio button; and enabling a user to press a submit button.
 31. A non-transitory readable medium stored with software code, the software code causing a mobile device to perform the following when executed by a processor of the mobile device: generating, by a mobile device, at least one predetermined request for detecting connectivity to an Internet via a wireless access network, which at least one predetermined request is addressed to a connectivity test server in the Internet; transmitting, by the mobile device, the at least one predetermined request to the wireless access network; and determining, by the mobile device, whether a response to the at least one predetermined request is received from the wireless access network and whether a received response corresponds to a predetermined response which is known to be provided by the connectivity test server in case the connectivity test server is reached by the at least one predetermined request, wherein reception of the predetermined response is considered to indicate connectivity to the Internet via the wireless access network.
 32. A system comprising: at least one of: a connectivity test server in the Internet and an access point of a wireless access network; and a mobile device including a processor and stored software code, the software code, with the processor, configured to cause the mobile device to generate at least one predetermined request for detecting connectivity to an Internet via the wireless access network, which at least one predetermined request is addressed to the connectivity test server; the software code, with the processor, configured to cause the mobile device to provide the at least one predetermined request for transmission to the wireless access network; and the software code, with the processor, configured to cause the mobile device to determine whether a response to the at least one predetermined request is received from the wireless access network and whether a received response corresponds to a predetermined response which is known to be provided by the connectivity test server in case the connectivity test server is reached by the at least one predetermined request, wherein reception of the predetermined response is considered to indicate a connectivity to the Internet. 